Device and method for determining knocking of internal combustion engine

ABSTRACT

An engine ECU executes a program including a step of, when it has temporarily been determined that knocking had occurred because of the presence of an integrated value greater than a product of the reference magnitude and coefficient Y among the integrated values of vibration in fourth frequency band D that includes first to third frequency bands A to C, calculating knock magnitude N using the integrated values in the synthesized waveform of first to third frequency bands A to C and correlation coefficient K calculated from a vibration waveform of fourth frequency band D. Based on a comparison between knock magnitude N and determination value V(KX), whether or not knocking has occurred is determined. If there is no integrated value greater than a product of the reference magnitude and coefficient Y, it is determined that knocking has not occurred.

This nonprovisional application is based on Japanese Patent ApplicationNo. 2006-076912 filed with the Japan Patent Office on Mar. 20, 2006, theentire contents of which are hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to device and method for determiningknocking of an internal combustion engine, and particularly to atechnique of determining whether knocking is present or absent based ona waveform of vibration of an internal combustion engine.

2. Description of the Background Art

Conventionally, various methods of determining whether knocking (knock)is present or absent have been proposed. For example, by detectingmagnitude of vibration occurring in an internal combustion engine andcomparing the magnitude with a threshold value, whether knocking ispresent or absent is determined. However, in an internal combustionengine, besides vibration due to knocking, vibration due to an intakevalve or an exhaust valve sitting on its seat may occur. Vibration mayalso occur due to the actuation of an injector (in particular, anin-cylinder direct injector that directly injects fuel inside acylinder) or a high-pressure pump that supplies fuel to the injector.When such vibration is detected as noise, it may not be possible todiscriminate vibration due to knocking from vibration due to noise,based on magnitude of vibration. Accordingly, a technique of determiningwhether knocking is present or absent in consideration of both magnitudeof vibration and a waveform shape has been proposed.

Japanese Patent Laying-Open No. 2003-021032 discloses a knock controldevice for an internal combustion engine in which a statisticalprocessing program that determines knocking has occurred when an outputvalue greater than a knock determination value corrected by statisticalprocessing is detected and a waveform shape program determining whetherknocking is present or absent from a waveform of vibration are used. Theknock control device for an internal combustion engine disclosed inJapanese Patent Laying-Open No. 2003-021032 includes: a knock sensordetecting knocking in an internal combustion engine; a statisticalprocessing portion statistically processing a signal detected by theknock sensor and input through a low-pass filter and a high-pass filter;a first temporal determination portion determining occurrence ofknocking based on a processing result by the statistical processingportion; a second temporal determination portion determining occurrenceof knocking based on a waveform shape of the signal detected by theknock sensor and input through the low-pass filter and the high-passfilter; and a final determination portion finally determining occurrenceof knocking based on the knock temporal determination of the firsttemporal determination portion and the knock temporal determination ofthe second temporal determination portion. When both of the first andsecond temporal determination portions determine that knocking hasoccurred, the final determination portion finally determines thatknocking has occurred.

According to the knock control device disclosed by the publication, aknock temporal determination by a statistical processing program and aknock temporal determination by a waveform shape program are used, andonly when both of the temporal determinations determine that knockinghas occurred, it is finally determined that knocking has occurred. As aresult, occurrence of knocking can precisely be determined even as to anoutput signal, which has been erroneously determined by a knockdetermination employing solely the statistical processing program or thewaveform shape program.

In the knock control device for an internal combustion engine ofJapanese Patent Laying-Open No. 2003-021032, a low-pass filter and ahigh-pass filter are employed. In order to reduce noise components toimprove precision in detecting vibration particular to knocking, it iseffective to narrow the bandwidth of a filter extracting only vibrationof a predetermined bandwidth. On the other hand, narrowing the bandwidthof a filter, vibration of noise components is removed and, as a result,a characteristic portion of noise components (such as occurrence timingof vibration, attenuation rate and the like) is removed also from thedetected waveform. In this case, even as to vibration that is actuallydue to noise components, a waveform that is similar to a waveform at thetime of knocking may be detected. Therefore, the vibration at the timeof knocking and the vibration due to noise components are hardlydiscriminated from each other based on a waveform. However, noconsideration on the bandwidth of the filters is made in Japanese PatentLaying-Open No. 2003-021032. Accordingly, even when knocking has notoccurred, it may erroneously be determined that knocking has occurred.

SUMMARY OF THE INVENTION

An object of the present invention is to provide a device and the likefor determining knocking of an internal combustion engine that canprecisely determine whether knocking is present or absent.

A device for determining knocking of an internal combustion engineaccording to one aspect of the present invention includes an operationunit. The operation unit detects a magnitude of vibration in a firstfrequency band that includes a frequency of vibration due to knocking,out of vibration occurring in the internal combustion engine. Theoperation unit detects a magnitude of vibration in a second frequencyband that includes the first frequency band and that is broader than thefirst frequency band, out of the vibration occurring in the internalcombustion engine. The operation unit detects a waveform of thevibration in the second frequency band, based on the magnitude of thevibration in the second frequency band. The operation unit determineswhether or not a magnitude greater than a predetermined threshold valueis detected from the vibration in the second frequency band. When it isdetermined that the magnitude greater than the predetermined thresholdvalue is detected from the vibration in the second frequency band, theoperation unit determines whether or not knocking has occurred based ona result of comparison between the waveform detected from the magnitudeof the vibration in the second frequency band and a waveform model thatis a reference of the vibration occurring in the internal combustionengine and on the magnitude of the vibration in the first frequencyband. When it is determined that the magnitude greater than thepredetermined threshold value is not detected from the vibration in thesecond frequency band, the operation unit determines that knocking hasnot occurred.

According to the present invention, a magnitude of vibration in a firstfrequency band that includes a frequency of vibration due to knocking isdetected, out of vibration occurring in the internal combustion engine.Thus, the magnitude of vibration particular to knocking can precisely beobtained. However, if the bandwidth of the frequency band is narrowedwhen detecting a waveform from the magnitude of vibration, vibration ofnoise components is removed. As a result, a characteristic portion ofnoise components (such as occurrence timing of vibration, attenuationrate and the like) is removed also from the waveform. In this case, evenas to vibration that is actually due to noise components, a waveformthat is similar to a waveform at the time of knocking may be detected.Therefore, the vibration at the time of knocking and the vibration dueto noise components are hardly discriminated from each other based on awaveform. Accordingly, a magnitude of vibration in a second frequencyband that includes the first frequency band and that is broader than thefirst frequency band is detected. A waveform of the vibration in thesecond frequency band is detected, based on the magnitude of thevibration in the second frequency band. Thus, a waveform that mayinclude vibration due to noise components can be detected. When amagnitude greater than a predetermined threshold value is detected fromthe vibration in the second frequency band, it can be regarded thatknocking is likely to have occurred. Conversely, when a magnitudegreater than a threshold value is not detected from the vibration in thesecond frequency band, it can be regarded that knocking is less likelyto have occurred. Accordingly, when it is determined that the magnitudegreater than the threshold value is detected from the vibration in thesecond frequency band, whether or not knocking has occurred isdetermined based on a result of comparison between the waveform detectedfrom the magnitude of the vibration in the second frequency band and awaveform model and on the magnitude of the vibration in the firstfrequency band. On the other hand, when it is determined that themagnitude greater than the threshold value is not detected from thevibration in the second frequency band, it is determined that knockinghas not occurred. Thus, when it can be regarded that knocking is likelyto have occurred, whether or not knocking has occurred can precisely bedetermined fully considering the characteristics of both knocking andnoise. This can suppress erroneous determination that knocking hasoccurred while it has not. As a result, a device for determiningknocking of an internal combustion engine that can precisely determinewhether knocking is present or absent can be provided.

Preferably, the operation unit determines whether or not a magnitudegreater than the predetermined threshold value is detected from thevibration in the second frequency band in a first interval of crankangle out of the first interval of crank angle and a second interval ofcrank angle in which a magnitude of the vibration due to knocking issmaller than in the first interval. When it is determined that themagnitude greater than the predetermined threshold value is detectedfrom the vibration in the second frequency band in the first interval,the operation unit determines whether or not knocking has occurred basedon a result of comparison between the waveform detected from themagnitude of the vibration in the second frequency band and the waveformmodel and on the magnitude of the vibration in the first frequency band.When it is determined that the magnitude greater than the predeterminedthreshold value is not detected from the vibration in the secondfrequency band in the first interval, the operation unit determines thatknocking has not occurred.

According to the present invention, whether or not a magnitude greaterthan the predetermined threshold value is detected from the vibration inthe second frequency band in a first interval of crank angle out of thefirst interval of crank angle and a second interval of crank angle, inwhich a magnitude of the vibration that is vibration in the secondfrequency band and that is due to knocking is smaller than in the firstinterval, is determined. Knocking has such a characteristic that itoccurs at approximately the same crank angle, and that the magnitude ofvibration due to knocking attenuates after the occurrence of knocking.Therefore, when the magnitude greater than the threshold value isdetected from the vibration in the second frequency band in the firstinterval, it can be regarded that knocking is likely to have occurred.Conversely, when the magnitude greater than the threshold value is notdetected from the vibration in the second frequency band in the firstinterval, it can be regarded that knocking is less likely to haveoccurred. Accordingly, when it is determined that the magnitude greaterthan the threshold value is detected from the vibration in the secondfrequency band in the first interval, whether or not knocking hasoccurred is determined based on a result of comparison between thewaveform detected from the magnitude of the vibration in the secondfrequency band and the waveform model and on the magnitude of thevibration in the first frequency band. On the other hand, when it isdetermined that the magnitude greater than the predetermined thresholdvalue is not detected from the vibration in the second frequency band inthe first interval, it is determined that knocking has not occurred.Thus, when it can be regarded that knocking is likely to have occurred,whether or not knocking has occurred can precisely be determined fullyconsidering the characteristics of both knocking and noise. This cansuppress erroneous determination that knocking has occurred while it hasnot.

Further preferably, when it is determined that the magnitude greaterthan the predetermined threshold value is not detected from thevibration in the second frequency band, the operation unit determinesthat knocking has not occurred, while not determining whether knockinghas occurred or not based on a result of comparison between the waveformdetected from the magnitude of the vibration in the second frequencyband and the waveform model and on the magnitude of the vibration in thefirst frequency band.

According to the present invention, when knocking is less likely to haveoccurred, it is determined that knocking has not occurred, while notdetermining whether knocking has occurred or not based on a result ofcomparison between the waveform detected from the magnitude of thevibration in the second frequency band and the waveform model and on themagnitude of the vibration in the first frequency band. Thus, whenknocking is less likely to have occurred, unnecessary processing can besuppressed from being performed.

Further preferably, the threshold value is a value calculated based onpredetermined number of magnitudes selected by placing higher priorityon smaller magnitudes out of the detected magnitudes.

According to the present invention, the threshold value is calculatedbased on predetermined number of magnitudes selected by placing higherpriority on smaller magnitudes. Thus, the threshold value can becalculated based on the magnitude that may not be due to knocking ornoise and that may be the mechanical vibration of the internalcombustion engine itself Accordingly, the threshold value suitable forindividual internal combustion engine can be obtained. By comparing sucha threshold value and the detected magnitude with each other, thepossibility that knocking have occurred can precisely be determined.

Further preferably, the threshold value is a value calculated as aproduct of an average value of predetermined number of magnitudesselected by placing higher priority on smaller magnitudes out of thedetected magnitudes and a predetermined coefficient.

According to the present invention, the threshold value is calculated asa product of an average value of predetermined number of magnitudesselected by placing higher priority on smaller magnitudes and apredetermined coefficient. Thus, the threshold value can be calculatedbased on the magnitude that may not be due to knocking or noise and thatmay be the mechanical vibration of the internal combustion engine itselfAccordingly, the threshold value suitable for individual internalcombustion engine can be obtained. By comparing such a threshold valueand the detected magnitude with each other, the possibility thatknocking have occurred can precisely be determined.

The foregoing and other objects, features, aspects and advantages of thepresent invention will become more apparent from the following detaileddescription of the present invention when taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic configuration diagram of an engine controlled byan engine ECU which is a knocking determination device according to anembodiment of the present invention;

FIG. 2 is a chart showing frequency bands of vibration generated in theengine at the time of knocking;

FIG. 3 is a control block diagram showing the engine ECU in FIG. 1;

FIG. 4 is a chart showing a waveform of vibration in the engine;

FIG. 5 is a chart showing a knock waveform model stored in ROM of theengine ECU;

FIG. 6 is a chart (No. 1) for comparing the vibration waveform of afourth frequency band D with the knock waveform model;

FIG. 7 is a chart (No. 1) showing a synthesized waveform of first tothird frequency bands A to C used for calculating a knock magnitude N;

FIG. 8 is a chart showing reference magnitude calculated usingintegrated values in the vibration waveform of fourth frequency band D;

FIG. 9 is a chart showing a map of determination values V(KX) stored inthe ROM or SRAM of the engine ECU;

FIG. 10 is a chart (No. b 1) showing frequency distribution of magnitudevalues LOG(V);

FIG. 11 is a chart (No. b 2) showing frequency distribution of magnitudevalues LOG(V);

FIG. 12 is a chart (No. 3) showing frequency distribution of magnitudevalues LOG(V);

FIG. 13 is a chart (No. 4) showing frequency distribution of magnitudevalues LOG(V);

FIG. 14 is a chart showing magnitude values LOG(V) used for forming thefrequency distribution of the magnitude values LOG(V);

FIG. 15 is a flowchart (No. 1) showing a control structure of a programexecuted by the engine ECU which is the knocking determination deviceaccording to the embodiment of the present invention;

FIG. 16 is a flowchart (No. 2) showing the control structure of theprogram executed by the engine ECU which is the knocking determinationdevice according to the embodiment of the present invention;

FIG. 17 is a flowchart (No. 3) showing the control structure of theprogram executed by the engine ECU which is the knocking determinationdevice according to the embodiment of the present invention;

FIG. 18 is a chart showing a vibration waveform of fourth frequency bandD;

FIG. 19 is a chart (No. 2) for comparing the vibration waveform offourth frequency band D with the knock waveform model;

FIG. 20 is a chart (No. 3) for comparing the vibration waveform offourth frequency band D with the knock waveform model;

FIG. 21 is a chart (No. 4) for comparing the vibration waveform offourth frequency band D with the knock waveform model;

FIG. 22 is a chart (No. 5) for comparing the vibration waveform offourth frequency band D with the knock waveform model;

FIG. 23 is a chart (No. 6) for comparing the vibration waveform offourth frequency band D with the knock waveform model;

FIG. 24 is a chart (No. 7) for comparing the vibration waveform offourth frequency band D with the knock waveform model; and

FIG. 25 is a chart (No. 2) showing a synthesized waveform of first tothird frequency bands A to C used for calculating a knock magnitude N.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Embodiments of the present invention will be described below withreference to the drawings. In the following description, the same partsare provided with the same reference numerals. They have the same namesand functions. Therefore, detailed description of the same parts is notrepeated.

With reference to FIG. 1, an engine 100 of a vehicle mounted with aknocking determination device according to the embodiment of the presentinvention will be described. Engine 100 is provided with a plurality ofcylinders. The knocking determination device according to the presentinvention is accomplished by a program executed by an engine ECU(Electronic Control Unit) 200, for example.

Engine 100 is an internal combustion engine in which an air-fuel mixtureof air drawn in from an air cleaner 102 and fuel injected from aninjector 104 is ignited by a spark plug 106 and burnt in a combustionchamber. An ignition timing is controlled to be MBT (Minimum advance forBest Torque) at which output torque becomes the maximum but is retardedor advanced according to an operation state of engine 100 such asoccurrence of knocking.

When the air-fuel mixture is burnt, a piston 108 is pushed down bycombustion pressure and a crankshaft 110 is rotated. The air-fuelmixture after combustion (exhaust gas) is cleaned by three-way catalysts112 and exhausted outside a car. An amount of air amount drawn intoengine 100 is regulated by a throttle valve 114.

Engine 100 is controlled by engine ECU 200. Connected to engine ECU 200are a knock sensor 300, a water temperature sensor 302, a crank positionsensor 306 provided to face a timing rotor 304, a sensor 308 of anopening position of throttle, a vehicle speed sensor 310, an ignitionswitch 312, and an air flow meter 314.

Knock sensor 300 is provided to a cylinder block of engine 100. Knocksensor 300 is formed of a piezoelectric element. Knock sensor 300generates voltage in response to vibration of engine 100. Magnitude ofthe voltage corresponds to magnitude of the vibration. Knock sensor 300sends a signal representing voltage to engine ECU 200. Water temperaturesensor 302 detects temperature of cooling water in a water jacket ofengine 100 and sends a signal representing a detection result to engineECU 200.

Timing rotor 304 is provided to crankshaft 110 and rotates withcrankshaft 1 10. On an outer periphery of timing rotor 304, a pluralityof protrusions are provided at predetermined intervals. Crank positionsensor 306 is provided to face the protrusions of the timing rotor 304.When timing rotor 304 rotates, an air gap between the protrusion oftiming rotor 304 and crank position sensor 306 changes and, as a result,magnetic flux passing through a coil portion of crank position sensor306 increases and decreases to generate electromotive force in the coilportion. Crank position sensor 306 sends a signal representing theelectromotive force to engine ECU 200. Engine ECU 200 detects a crankangle and the number of rotations of crankshaft 110 based on the signalsent from crank position sensor 306.

Sensor 308 of the opening position of throttle detects an openingposition of throttle and sends a signal representing a detection resultto engine ECU 200. Vehicle speed sensor 310 detects the number ofrotations of a wheel (not shown) and sends a signal representing adetection result to engine ECU 200. Engine ECU 200 calculates a vehiclespeed based on the number of rotations of the wheel. Ignition switch 312is turned on by a driver in starting of engine 100. Air flow meter 314detects the intake air amount into engine 100 and sends a signalrepresenting a detection result to engine ECU 200.

Engine ECU 200 operates by electric power supplied from an auxiliarybattery 320 that is a power supply. Engine ECU 200 performs computationbased on signals sent from the respective sensors and ignition switch312 and map and program stored in ROM (Read Only Memory) 202 or SRAM(Static Random Access Memory) 204 and controls the devices so as tobring engine 100 into a desired operation state.

In the present embodiment, engine ECU 200 detects a waveform ofvibration (hereafter referred to as “vibration waveform”) of engine 100in a predetermined knock detection gate (a section between apredetermined first crank angle and a predetermined second crank angle)based on the signal sent from knock sensor 300 and the crank angle anddetermines whether or not knocking has occurred in engine 100 based onthe detected vibration waveform. The knock detection gate in theembodiment is from a top dead center (0°) to 90° in a combustion stroke.The knock detection gate is not limited to it.

When knocking occurs, vibration at a frequency near a frequency shown ina solid line in FIG. 2 is generated in engine 100. The frequency of thevibration generated due to the knocking is not constant and varies in acertain range of frequencies. Therefore, in the embodiment, as shown inFIG. 2, vibrations of a first frequency band A, a second frequency bandB and a third frequency band C that include frequencies of vibration dueto knocking are detected. Further, a fourth frequency band D that isbroad and that includes first to third frequency bands A to C isdetected. In FIG. 2, CA designates the crank angle. The number offrequency bands of vibrations generated due to knocking is notrestricted to three.

If the bandwidth of each frequency band is broad, it is highly likelythat noises other than vibration due to knocking (for example vibrationdue to an in-cylinder injector or an intake valve or an exhaust valvesitting on its seat) are included.

Conversely, narrowing the bandwidth in which vibration is detected,while noise components included in magnitude of vibration being detectedcan be suppressed, a characteristic portion of noise components (such asoccurrence timing of vibration, attenuation rate and the like) isremoved also from the vibration waveform. In this case, even as tovibration that is actually due to noise components, a waveform notincluding noise components, that is, a waveform that is similar to awaveform at the time of knocking may be detected. Therefore, thevibration at the time of knocking and the vibration due to noisecomponents are hardly discriminated from each other based on a waveform.

Accordingly, in the embodiment, in order to precisely include vibrationparticular to knocking, vibration in first to third frequency bands A toC, each of which bandwidth is narrowly set, is detected.

On the other hand, in order to determine whether knocking has occurredor not considering the noise when noise occurs, vibration in a fourthfrequency band D that is broad and that includes first to thirdfrequency bands A to C is detected so as to include the noise.

With reference to FIG. 3, engine ECU 200 will be further described.Engine ECU 200 includes an A/D (analog/digital) converter 400, aband-pass filter (1) 410, a band-pass filter (2) 420, a band-pass filter(3) 430, a band-pass filter (4), and an integrating portion 450.

A/D converter 400 converts an analog signal sent from knock sensor 300into a digital signal. Band-pass filter (1) 410 allows passage of onlysignals in first frequency band A out of signals sent from knock sensor300. In other words, by band-pass filter (1) 410, only vibrations infirst frequency band A are extracted from vibrations detected by knocksensor 300.

Band-pass filter (2) 420 allows passage of only signals in secondfrequency band B out of signals sent from knock sensor 300. In otherwords, by band-pass filter (2) 420, only vibrations in second frequencyband B are extracted from vibrations detected by knock sensor 300.

Band-pass filter (3) 430 allows passage of only signals in thirdfrequency band C out of signals sent from knock sensor 300. In otherwords, by band-pass filter (3) 430, only vibrations in third frequencyband C are extracted from vibrations detected by knock sensor 300.

Band-pass filter (4) 440 allows passage of only signals in fourthfrequency band D out of signals sent from knock sensor 300. In otherwords, by band-pass filter (4) 440, only vibrations in fourth frequencyband D are extracted from vibrations detected by knock sensor 300.

Integrating portion 450 integrates signals selected by the band-passfilters (1) 410 to (4) 440, i.e., magnitudes of vibrations for a crankangle of 5° at a time. The integrated value will hereafter be referredto as an integrated value. The integrated value is calculated in eachfrequency band. By this calculation of the integrated value, thevibration waveform in each frequency band is detected.

Furthermore, the calculated integrated values in the first to thirdfrequency bands A to C are added to correspond to the crank angles. Inother words, the vibration waveforms of the first to third frequencybands A to C are synthesized.

As a result, as shown in FIG. 4, a vibration waveform of engine 100 isdetected. In other words, the synthesized waveform of the first to thirdfrequency bands A to C and the vibration waveform of fourth frequencyband D are used as the vibration waveform of engine 100. The vibrationwaveform (integrated values) of fourth frequency band D is notsynthesized, and it is used alone.

Of the detected vibration waveforms, the vibration waveform of fourthfrequency band D is compared with a knock waveform model stored in ROM202 of engine ECU 200 as shown in FIG. 5. The knock waveform model isformed in advance as a model of a vibration waveform when the knockingoccurs in engine 100.

In the knock waveform model, the magnitudes of the vibrations areexpressed as dimensionless numbers in a range of 0 to 1 and themagnitude of the vibration does not univocally correspond to the crankangle. In other words, in the knock waveform model in the embodiment, itis determined that the magnitude of the vibration decreases as the crankangle increases after a peak value of the magnitude of the vibration,but a crank angle at which the magnitude of the vibration becomes thepeak value is not determined.

The knock waveform model in the embodiment corresponds to the vibrationafter the peak value of the magnitude of the vibration generated due toknocking. It is also possible to store a knock waveform modelcorresponding to vibration after a rising edge of the vibration causedby knocking.

The knock waveform model is formed and stored in advance based on avibration waveform of engine 100 detected when knocking is forciblygenerated experimentally.

The knock waveform model is formed by using engine 100 with dimensionsof engine 100 and an output value of knock sensor 300 which are medianvalues of dimensional tolerance and tolerance of the output value ofknock sensor 300 (hereafter referred to as “median characteristicengine”). In other words, the knock waveform model is a vibrationwaveform in a case in which knocking is forcibly generated in the mediancharacteristic engine. A method of forming the knock waveform model isnot limited to it and it is also possible to form the model bysimulation.

In comparison between the detected waveform and the knock waveformmodel, as shown in FIG. 6, a normalized waveform and the knock waveformmodel are compared with each other. Here, normalization means to expressthe magnitude of the vibration as a dimensionless number in a range of 0to 1 by dividing each integrated value by a maximum value of theintegrated value in the detected vibration waveform, for example.However, a method of normalization is not limited to it.

In the embodiment, engine ECU 200 calculates a correlation coefficient Kwhich is a value related to a deviation of the normalized vibrationwaveform and the knock waveform model from each other. With timing atwhich the magnitude of the vibration becomes a maximum value in thevibration waveform after the normalization and timing at which themagnitude of the vibration becomes a maximum value in the knock waveformmodel synchronized, an absolute value (deviation amount) of thedeviation of the vibration waveform after the normalization and theknock waveform model from each other is calculated at each crank angle(at every 5° of crank angle) to thereby calculate correlationcoefficient K.

If the absolute value of the deviation of the vibration waveform afterthe normalization and the knock waveform model from each other at eachcrank angle is ΔS(I) (I is a natural number) and a value (an area of theknock waveform model) obtained by integrating the magnitude of vibrationin the knock waveform model by the crank angle is S, correlationcoefficient K is calculated by an equation, K=(S−ΣΔS(I))/S, where ΣΔS(I)is the total of ΔS(I). In the embodiment, the closer a shape of thevibration waveform to a shape of the knock waveform model, the greatervalue correlation coefficient K is calculated as. Therefore, if awaveform of vibration caused by factors other than the knocking isincluded in the vibration waveform, correlation coefficient K iscalculated as a small value. A method of calculating correlationcoefficient K is not limited to it.

The vibration waveform of fourth frequency band D of broad bandwidth iscompared with the knock waveform model to calculate correlationcoefficient K, since its waveform shape is highly precise as comparedwith first to third frequency bands A to C of narrow bandwidth.

The synthesized waveform of first to third frequency bands A to C isused for calculating knock magnitude N. As indicated by the hatchedportion in FIG. 7, knock magnitude N is calculated using a value αsumming (integrating) reference magnitudes for crank angles of 90° and aportion β greater than the reference magnitude (the sum of differencebetween the integrated value and the reference magnitude) in a knockrange defined from the crank angle CA(P) where the integrated value isat its peak (for example a range for crank angles of 40°).

That is, in the knock range where magnitude of vibration due to knockingis relatively great, portion β greater than the reference magnitude isused. In a range (other than the knock range) where magnitude ofvibration due to knocking is smaller (where vibration attenuates) ascompared to the knock range, the portion greater than the referencemagnitude is not used to calculate knock magnitude N. A method ofcalculating knock magnitude N will be described later.

The reference magnitude is calculated using the integrated values offourth frequency band D. As shown in FIG. 8, the reference magnitude iscalculated as an average value of M integrated values selected placinghigher priority on smaller integrated values out of the integratedvalues obtained as the integrated values of fourth frequency band D(where M is a natural number smaller than the number of the obtainedintegrated values, and for example it is “3”). The method of calculatingthe reference magnitude is not limited to it, and an Mth smallestintegrated value may be employed as the reference magnitude.

In the embodiment, engine ECU 200 compares calculated knock magnitude Nand a determination value V(KX) stored in SRAM 204 with each other, todetermine whether or not knocking has occurred in engine 100 for everyignition cycle.

As shown in FIG. 9, determination values V(KX) are stored as a map foreach range divided by an operation state using an engine speed NE and anintake air amount KL as parameters. In the embodiment, nine ranges foreach cylinder are provided, which are divided as follows: low speed(NE<NE(1)); medium speed (NE(1)≦NE<NE(2)); high speed (NE(2)≦NE); lowload (KL<KL(1)); medium load (KL(1)≦KL<KL(2)); and high load (KL(2)≦KL).The number of the ranges is not limited to it. The ranges may be dividedusing parameters other than engine speed NE and intake air amount KL.

At the time of shipment of engine 100 or the vehicle, a value determinedin advance by an experiment or the like is used as determination valueV(KX) stored in ROM 202 (an initial value of determination value V(KX)at the time of shipment). However, a magnitude of the same vibrationoccurring in engine 100 may be detected as different values due tovariation in the output values and degradation of knock sensor 300. Inthis case, it is necessary to correct determination value V(KX) and todetermine whether or not knocking has occurred by using determinationvalue V(KX) corresponding to the magnitude detected actually.

Therefore, in the embodiment, a knock determination level V(KD) iscalculated based on frequency distribution representing a relationshipbetween a magnitude value LOG(V) which is a value obtained bylogarithmically converting magnitudes V and a frequency (the number oftimes, a probability) of detection of each magnitude value LOG(V).

Magnitude value LOG(V) is calculated for each range in which enginespeed NE and intake air amount KL are used as parameters. Magnitude Vused for calculating magnitude value LOG(V) is a peak value (peak valueof integrated values at every 5°) of magnitudes between predeterminedcrank angles. Based on calculated magnitude value LOG(V), median valueV(50) at which the accumulative sum of frequencies of magnitudes LOG(V)from the minimum value reaches 50% is calculated. Furthermore, astandard deviation σ of magnitude values LOG(V) equal to or smaller thanmedian value V(50) is calculated. For example, in the embodiment, amedian value V(50) and a standard deviation σ, which approximate themedian value and standard deviation calculated based on a plurality ofmagnitude values LOG(V) (e.g., 200 cycles), are calculated for eachignition cycle by the following calculation method.

If a currently detected magnitude value LOG(V) is greater than apreviously calculated median value V(50), then a value obtained byadding a predetermined value C(1) to the previously calculated medianvalue V(50) is calculated as a current median value V(50). On the otherhand, if a currently detected magnitude value LOG(V) is smaller than apreviously calculated median value V(50), then a value obtained bysubtracting a predetermined value C(2) (e.g., C(2) and C(1) are the samevalue) from the previously calculated median value V(50) is calculatedas a current median value V(50).

If a currently detected magnitude value LOG(V) is smaller than apreviously calculated median value V(50) and greater than a valueobtained by subtracting a previously calculated standard deviation σfrom the previously calculated median value V(50), then a value obtainedby subtracting a value twice as large as a predetermined value C(3) fromthe previously calculated standard deviation σ is calculated as acurrent standard deviation σ. On the other hand, if a currently detectedmagnitude value LOG(V) is greater than a previously calculated medianvalue V(50) or smaller than a value obtained by subtracting a previouslycalculated standard deviation σ from the previously calculated medianvalue V(50), then a value obtained by adding a predetermined value C(4)(e.g., C(3) and C(4) are the same value) to the previously calculatedstandard deviation σ is calculated as a current standard deviation σ. Amethod of calculating median value V(50) and standard deviation σ is notlimited to it. Also, initial values of median value V(50) and standarddeviation σ may be values set in advance or may be “0”.

Using median value V(50) and standard deviation σ, a knock determinationlevel V(KD) is calculated. As shown in FIG. 10, a value obtained byadding the product of a coefficient U(1) (U(1) is a constant and U(1)=3,for example) and standard deviation σ to median value V(50) is a knockdetermination level V(KD). A method of calculating knock determinationlevel V(KD) is not limited to it.

Proportion (frequency) of magnitude values LOG(V) greater than knockdetermination level V(KD) is determined as a frequency of occurrence ofknocking, and counted as knock proportion KC. If knock proportion KC isgreater than a threshold value KC(0), then determination value V(KX) iscorrected to be reduced by a predetermined correction amount so that thefrequency of retarding ignition timing becomes higher. If knockproportion KC is smaller than threshold value KC(0), then determinationvalue V(KX) is corrected to be increased by a predetermined correctionamount so that the frequency of advancing ignition timing becomeshigher. The corrected determination value V(KX) is stored in SRAM 204.

Coefficient U(1) is a coefficient obtained based on data and findingsobtained by experiments and the like. Magnitude value LOG(V) greaterthan knock determination level V(KD) when U(1)=3 substantially agreeswith magnitude value LOG(V) in an ignition cycle in which knocking hasactually occurred. It is also possible to use other values than “3” ascoefficient U(1).

If knocking is not occurring in engine 100, the frequency distributionof magnitude values LOG(V) becomes normal distribution as shown in FIG.11, and maximum value V(MAX) of magnitude value LOG(V) and knockdetermination level V(KD) agree with each other. On the other hand, whena greater magnitude V is detected and a greater magnitude value LOG(V)is calculated by the occurrence of knocking, as shown in FIG. 12,maximum value V(MAX) becomes greater than knock determination levelV(KD).

When the frequency of occurrence of knocking becomes further higher, asshown in FIG. 13, maximum value V(MAX) becomes further greater. Medianvalue V(50) and standard deviation a in the frequency distributionbecome greater as maximum value V(MAX) does. As a result, knockdetermination level V(KD) becomes greater.

A magnitude value LOG(V) smaller than knock determination level V(KD) isnot determined as a magnitude value LOG(V) in a cycle in which knockinghas occurred. Therefore, as knock determination level V(KD) becomesgreater, the frequency of determining that knocking has not occurredwhile knocking has actually occurred becomes greater.

Therefore, in the embodiment, magnitude values LOG(V) in a rangesurrounded with a broken line in FIG. 14 are used to exclude magnitudevalues LOG(V) greater than a threshold value V(1), to thereby obtainmedian value V(50) and standard deviation σ. FIG. 14 is a chart in whichcalculated magnitude values LOG(V) are plotted for each correlationcoefficient K in a cycle in which the magnitude values LOG(V) areobtained.

Threshold value V(1) is a value obtained by adding, to a median value offrequency distribution of magnitude values LOG(V), the product of acoefficient U(2) (U(2) is a constant and U(2)=3, for example) and astandard deviation of magnitude values LOG(V) equal to or smaller thanthe median value.

By extracting only magnitude values LOG(V) smaller than threshold valueV(1) to calculate median value V(50) and standard deviation σ, medianvalue V(50) and standard deviation σ do not become excessively great,and become stable values. As a result, knock determination level V(KD)can be suppressed from becoming excessively high. Therefore, thefrequency of determining that knocking has not occurred while knockinghas actually occurred can be suppressed from becoming high.

The method of extracting magnitude values LOG(V) used for calculatingmedian value V(50) and standard deviation σ is not limited to it. Forexample, out of magnitude values LOG(V) smaller than threshold valueV(1) described above, magnitude values LOG(V) calculated in the ignitioncycles in which correlation coefficient K is greater than thresholdvalue K(1) may be extracted.

With reference to FIGS. 15 to 17, a control structure of a programexecuted by engine ECU 200 which is the knocking determination deviceaccording to the embodiment so as to control the ignition timing bydetermining whether or not knocking has occurred in each ignition cyclewill be described.

In step 100 (hereafter “step” will be abbreviated to “S”), engine ECU200 detects engine speed NE based on a signal sent from crank positionsensor 306 and detects intake air amount KL based on a signal sent fromair flow meter 314.

In S102, engine ECU 200 detects magnitude of vibration of engine 100based on a signal sent from knock sensor 300. The magnitude of thevibration is expressed as an output voltage of knock sensor 300. Themagnitude of the vibration may be expressed as a value corresponding tothe output voltage of knock sensor 300. Detection of the magnitude iscarried out between the top dead center and 90° (a crank angle of 90°)in a combustion stroke.

In S104, engine ECU 200 calculates a value (integrated value) obtainedby integrating output voltages (values representing magnitudes ofvibrations) of knock sensor 300 for every 5° of crank angle (for crankangles of 5°). The integrated value is calculated for vibrations in eachof first to fourth frequency bands A to D. Here, integrated values inthe first to third frequency bands A to C are added to correspond to thecrank angles. In other words, the vibration waveforms of the first tothird frequency bands A to C are synthesized.

In S106, engine ECU 200 calculates a reference magnitude as an averagevalue of M integrated values which are selected out of the integratedvalues of fourth frequency band D placing higher priority on smallerintegrated values.

In S108, engine ECU 200 determines whether there is an integrated valuegreater than a product of the reference magnitude and a coefficient Y (Yis a positive value, for example “2”) among the integrated values offourth frequency band D between the top dead center and CA(A) of crankangle (CA(A)<90°, for example 45°).

When there is an integrated value greater than the product of thereference magnitude and coefficient Y (YES in S108), the processingmoves to S110. Otherwise (NO in S108), the processing moves to S112.

In S110, engine ECU 200 temporarily determines that knocking hasoccurred. In S112, engine ECU 200 determines that knocking has notoccurred.

In S114, engine ECU 200 normalizes the vibration waveform of fourthfrequency band D. Here, normalization means to express the magnitude ofthe vibration as a dimensionless number in a range of 0 to 1 by dividingeach integrated value by the calculated peak value.

In S200, engine ECU 200 calculates an absolute value ΔS(I) of thedeviation of the vibration waveform of fourth frequency band D after thenormalization and the knock waveform model from each other at each crankangle.

In S202, engine ECU 200 determines whether or not ΔS(I) greater thanthreshold value ΔS(0) is present. When ΔS(I) greater than thresholdvalue ΔS(0) is present (YES in S202), the processing moves to S300.Otherwise (NO in S202), the processing moves to S312.

In S300, engine ECU 200 determines whether or not the number of ΔS(I)greater than threshold value ΔS(0) is equal to or smaller than apredetermined number Q(1). When the number of ΔS(I) greater thanthreshold value ΔS(0) is equal to or smaller than predetermined numberQ(1) (YES in S300), the processing moves to S302. Otherwise (NO inS300), the processing moves to S312.

In S302, engine ECU 200 determines whether or not the number of ΔS(I)greater than threshold value ΔS(0) is equal to or smaller than apredetermined number Q(2). When the number of ΔS(I) greater thanthreshold value ΔS(0) is equal to or smaller than predetermined numberQ(2) (YES in S302), the processing moves to S304. Otherwise (NO inS302), the processing moves to S306.

In S304, engine ECU 200 corrects the normalized vibration waveform sothat the magnitude agrees with the magnitude of the knock waveform model(so that ΔS(I) is reduced to “0”) at crank angles where ΔS(I) is greaterthan threshold value ΔS(0).

In S306, engine ECU 200 corrects the normalized vibration waveform sothat the magnitude agrees with the magnitude of the knock waveform model(so that ΔS(I) is reduced to “0”) at Q(3) (Q(3)<Q(1)) of crank angle(s),placing higher priority on crank angles having greater ΔS(I) among thecrank angles where ΔS(I) is greater than threshold value ΔS(0).

In S308, engine ECU 200 stores the crank angle(s) where correction wasconducted and the amount of the correction (a product of ΔS(I) and thepeak value of the integrated values) γ in SRAM 204.

In S310, engine ECU 200 compares the corrected vibration waveform withthe knock waveform model, and calculates correlation coefficient K whichis a value related to the deviation of the corrected vibration waveformand the knock waveform model from each other.

In S312, engine ECU 200 compares the normalized vibration waveform (thatis not corrected) with the knock waveform model, and calculatescorrelation coefficient K which is a value related to the deviation ofthe normalized vibration waveform and the knock waveform model from eachother.

In S400, engine ECU 200 determines whether or not it has temporarilybeen determined that knocking had occurred. When it has temporarily beendetermined that knocking had occurred (YES in S400), the processingmoves to S500. Otherwise (NO in S400), the processing ends.

In S500, engine ECU 200 calculates knock magnitude N. Knock magnitude Nis calculated using the synthesized waveform of first to third frequencybands A to C. As indicated by the hatched portion in FIG. 7, knockmagnitude N is calculated by an equation,N=(α+(β−γ)×K)/α  (1)using α that is a value obtained by summing (integrating) referencemagnitudes for crank angles of 90° (for the knock detection gate), βthat is a portion greater than the reference magnitude in a knock rangedefined from the crank angle CA(P) where the integrated value is at itspeak, γ that is a correction amount of the vibration waveform, and Kthat is a correlation value K. Here, if correction of the vibrationwaveform has not been conducted, knock magnitude N is calculatedemploying γ=0.

In S502, engine ECU 200 determines whether knock magnitude N is greaterthan determination value V(KX). When knock magnitude N is greater thandetermination value V(KX) (YES in S502), the processing moves to S504.Otherwise (NO in S502), the processing moves to S508.

In S504, engine ECU 200 determines that knocking has occurred in engine100. In S506, engine ECU 200 retards the ignition timing.

In S508, engine ECU 200 determines that knocking has not occurred inengine 100. In S510, engine ECU 200 advances the ignition timing.

Operation of engine ECU 200 which is the knocking determination deviceaccording to the embodiment based on the above configuration andflowcharts will be described. In the following description, it isassumed that the above-described predetermined number Q(1) is “3”, Q(2)is “2”, and Q(3) is “1”.

During an operation of engine 100, engine speed NE is detected based onthe signal sent from crank position sensor 306 and intake air amount KLis detected based on the signal sent from air flow meter 314 (S100).Moreover, based on the signal sent from knock sensor 300, a magnitude ofvibration of engine 100 is detected (S102).

Between the top dead center and 90° in the combustion stroke, theintegrated value for every 5° of vibrations in each of the first tofourth frequency bands A to D is calculated (S104). The calculatedintegrated values in the first to third frequency bands A to C are addedto correspond to the crank angles to thereby synthesize a vibrationwaveform.

Of those waveforms, the vibration waveform of fourth frequency band Dand knock waveform model are compared with each other to therebycalculate correlation coefficient K, which is used in determiningwhether knocking is present or absent for every ignition cycle. On theother hand, sometimes a waveform in a shape similarly to that of awaveform at the time of knocking is obtained, even when knocking has notoccurred and the vibration magnitude is small. In such a case, it mayerroneously be determined that knocking has occurred, even thoughknocking has not occurred. Accordingly, whether knocking is present orabsent is temporarily determined based on the integrated values(magnitude) of the vibration of fourth frequency band D.

In order to temporarily determine whether knocking is present or absent,a reference magnitude is calculated as an average value of M integratedvalues which are selected out of the integrated values of fourthfrequency band D placing higher priority on smaller integrated values(S106). Thus, the reference magnitude that may not be due to knocking ornoise and that may be the mechanical vibration of engine 100 itself canbe calculated. Accordingly, the reference magnitude suitable forindividual engine 100 can be obtained.

Here, knocking has such a characteristic that it occurs at approximatelythe same crank angle around the top dead center, and that the magnitudeof vibration due to knocking attenuates after the occurrence ofknocking. Therefore, as shown in FIG. 18, when knocking has occurred,the integrated values of the vibration due to knocking can be relativelyhigh between the crank angles of the top dead center (the start of theknock detection gate) and CA(A). That is, the magnitude of vibration dueto knocking can be relatively great.

On the other hand, the integrated values of the vibration due toknocking can be relatively small between the crank angels of CA(A) andthe end of knock detection gate. That is, the magnitude of the vibrationdue to knocking can be relatively small.

Accordingly, as shown in FIG. 18, when there is an integrated valuegreater than a product of the reference magnitude and coefficient Ybetween the crank angles of the top dead center and CA(A) (YES in S108), it can be regarded that it is likely that knocking has occurred.Therefore, it is temporarily determined that knocking has occurred(S110).

On the other hand, when there is no integrated value greater than theproduct of the reference magnitude and coefficient Y between the crankangles of the top dead center and CA(A) (NO in S108), it can be regardedthat it is extremely unlikely that knocking has occurred. Therefore, itis determined that knocking has not occurred (S112).

Thereafter, irrespective of whether temporal determination that knockinghas occurred is made, the vibration waveform of fourth frequency band Dis normalized (S114). By normalization, the magnitudes of the vibrationsin the vibration waveform are expressed as dimensionless numbers in arange of 0 to 1. In this manner, it is possible to compare the detectedvibration waveform and the knock waveform model with each otherirrespective of the magnitude of vibration. Therefore, it is unnecessaryto store the large number of knock waveform models corresponding to themagnitudes of the vibrations to thereby facilitate forming of the knockwaveform model.

With timing at which the magnitude of the vibration becomes a maximumvalue in the vibration waveform after the normalization and timing atwhich the magnitude of the vibration becomes a maximum value in theknock waveform model synchronized (see FIG. 6), an absolute value ΔS(I)of the deviation of the vibration waveform after the normalization andthe knock waveform model from each other at each crank angle iscalculated (S200).

Here, as shown in FIG. 19, since a vibration waveform that approximatesthe knock waveform model is obtained, when there is no ΔS(I) greaterthan threshold value ΔS(0) (NO in S202), it is considered that theobtained vibration waveform does not include vibration due to noise(vibration due to the actuation of intake valve 116, exhaust valve 118,injector 104 (in particular, an in-cylinder direct injector thatdirectly injects fuel inside a cylinder), pump 120 (in particular, ahigh-pressure pump that supplies fuel to the injector) other thanknocking.

Here, based on the total of calculated ΔS(I), i.e., ΣΔS(I) and value Sobtained by integrating the magnitude of the vibration in the knockwaveform model by the crank angle, correlation coefficient K iscalculated by K=(S−ΣΔS(I))/S (S312).

In this manner, it is possible to convert a degree of agreement betweenthe detected vibration waveform and the knock waveform model into anumber to objectively determine the degree. Furthermore, by comparingthe vibration waveform and the knock waveform model with each other, itis possible to analyze whether or not the vibration is a vibration atthe time of knocking from behavior of the vibration such as anattenuating trend of the vibration.

Meanwhile, it is known that vibration due to noise of intake valve 116,exhaust valve 118, injector 104, pump 120 and the like has suchcharacteristics that it is great in magnitude but attenuates morequickly than vibration due to knocking. That is, an occurrence period ofvibration due to noise is shorter than that of vibration due toknocking.

Accordingly, as shown in FIG. 20, when a vibration waveform thatapproximates the knock waveform model is obtained but there is ΔS(I)greater than threshold value ΔS(0) (YES in S202) in the number equal toor smaller than “3” (YES in S300), it is considered that the obtainedvibration waveform may include vibration due to noise.

In particular, when the number of ΔS(I) greater than threshold valueΔS(0) is equal to or smaller than “2” (YES in S302), it is consideredthat it is highly possible for the obtained vibration waveform toinclude vibration due to noise.

In this case, if the obtained vibration waveform as it stands is simplycompared with the knock waveform model, an erroneous determination thatknocking has not occurred while knocking has occurred may be madebecause great ΔS(I) is present.

Then, as shown in FIG. 21, vibration waveform is corrected so that themagnitude agrees with the magnitude of knock waveform model at crankangles where ΔS(I) is greater than threshold value ΔS(0) (S304).

Thus, the effect of vibration due to noise included in the vibrationwaveform can be suppressed. As a result, an erroneous determination thatknocking has not occurred while knocking has occurred can be suppressed.

On the other hand, as shown in FIG. 22, when the number of ΔS(I) greaterthan threshold value ΔS(0) is equal to or smaller than “3” (YES in S300)and more than “2” (NO in S302), it is possible for the obtainedvibration waveform to include or not to include vibration due to noise.

If the vibration waveform is corrected in such a case, an erroneousdetermination that knocking has occurred while knocking has not occurredcan be made. Accordingly, in this case, as shown in FIG. 23, vibrationwaveform is corrected so that the magnitude agrees with the magnitude ofknock waveform model at “one” crank angle, placing higher priority oncrank angles having greater ΔS(I) among the crank angles where ΔS(I) isgreater than threshold value ΔS(0) (S306). Thus, undue correction to thevibration waveform can be suppressed. As a result, an erroneousdetermination that knocking has occurred while knocking has not occurredcan be suppressed.

The crank angle(s) where correction was conducted and the amount of thecorrection γ is stored in SRAM 204 (S308). The corrected vibrationwaveform and the knock waveform model are compared with each other tocalculate correlation coefficient K (S310).

As shown in FIG. 24, since a vibration waveform that is greatlydifferent from the knock waveform model is obtained, when there is ΔS(I)greater than threshold value ΔS(0) (YES in S202) and the number is “4”(more than “3”) (NO in S300), it is highly possible for the obtainedvibration waveform not to include vibration due to noise.

Accordingly, without correcting the vibration waveform, the obtainedvibration waveform and the knock waveform model are compared with eachother and correlation coefficient K is calculated (S312). As a result,an erroneous determination that knocking has occurred while knocking hasnot occurred can be suppressed.

Thereafter, when it has not temporarily been determined that knockinghad occurred (NO in S400), that is, when it is determined that knockinghas not occurred, knock magnitude N is not calculated and the processingends. That is, the calculated correlation coefficient K is used only forforming the above-described frequency distribution (see FIG. 14). Thus,unnecessary processing is suppressed from being performed.

On the other hand, when it has temporarily been determined that knockinghad occurred (YES in S400), knock magnitude N is calculated. Incalculating knock magnitude N, the integrated values in the synthesizedwaveform of first to third frequency bands A to C are used.

As shown in FIG. 25, a noise portion (A) and a noise portion (B)corresponding to vibration due to noise can be mixed also in thesynthesized waveform of first to third frequency bands A to C. In orderto remove the noise portions, using α that is a value obtained bysumming (integrating) reference magnitudes for crank angles of 90°, βthat is a portion where integrated values are greater than the referencemagnitude in the knock range, γ that is a correction amount, knockmagnitude N is calculated by an equation, N=(α+(β−γ)×K)/α (S500).

That is, knock magnitude N is calculated using β, which is a portionwhere integrated values are greater than the reference magnitude in theknock range where magnitude of vibration due to knocking is great, andwithout using portions where integrated values are greater than thereference magnitude in ranges other than the knock range (the rangesexcept for the knock range in the knock detection gate, where magnitudeof vibration due to knocking is smaller than in the knock range). Thus,noise portion (A) in FIG. 25, which is outside the knock range, can beremoved. Accordingly, in a range where magnitude of vibration due toknocking is small, the integrated value considered to be due to noisesince a great integrated value is calculated, can be removed.

Further, knock magnitude N is calculated subtracting correction amount γfrom β which is a portion where integrated values are greater than thereference magnitude in the knock range. Thus, noise portion (B) in FIG.25, which is inside the knock range, can be removed. Accordingly, in arange where magnitude of vibration due to knocking is great, theintegrated value considered to be due to noise since a great integratedvalue is calculated, can be removed.

When thus calculated knock magnitude N is greater than determinationvalue V(KX) (YES in S502), it is determined that knocking has occurred(S504), and ignition timing is retarded (S506). This can suppressoccurrence of knocking.

On the other hand, when knock magnitude N is not greater thandetermination value V(KX) (NO in S502), it is determined that knockinghas not occurred (S508), and ignition timing is advanced (S510). Thus,by comparing knock magnitude N and determination value V(KX) with eachother, whether or not knocking has occurred is determined for eachignition cycle, and the ignition timing is retarded or advanced.

As above, according to the engine ECU that is the knocking determiningdevice according to the embodiment, whether there is an integrated valuegreater than a product of the reference magnitude and coefficient Yamong the integrated values of vibration in fourth frequency band D thatincludes first to third frequency bands A to C is determined. When thereis an integrated value greater than a product of the reference magnitudeand coefficient Y, knock magnitude N is calculated using the integratedvalues in the synthesized waveform of first to third frequency bands Ato C and correlation coefficient K calculated from a vibration waveformof fourth frequency band D. Based on a comparison between knockmagnitude N and determination value V(KX), whether or not knocking hasoccurred is determined for each ignition cycle. On the other hand, ifthere is no integrated value greater than a product of the referencemagnitude and coefficient Y, it is determined that knocking has notoccurred. Thus, when it can be regarded that knocking is likely to haveoccurred, whether or not knocking has occurred can precisely bedetermined fully considering the characteristics of both knocking andnoise. Conversely, when it is less likely that knocking has occurred, itcan be determined that knocking has not occurred. This can suppresserroneous determination that knocking has occurred while it has not. Asa result, whether knocking is present or absent can precisely bedetermined.

Although the present invention has been described and illustrated indetail, it is clearly understood that the same is by way of illustrationand example only and is not to be taken by way of limitation, the spiritand scope of the present invention being limited only by the terms ofthe appended claims.

1. A device for determining knocking of an internal combustion engine,comprising an operation unit, wherein said operation unit detects amagnitude of vibration in a first frequency band that includes afrequency of vibration due to knocking, out of vibration occurring insaid internal combustion engine, said operation unit detects a magnitudeof vibration in a second frequency band that includes said firstfrequency band and that is broader than said first frequency band, outof the vibration occurring in said internal combustion engine, saidoperation unit detects a waveform of the vibration in the secondfrequency band, based on the magnitude of the vibration in said secondfrequency band, said operation unit determines whether or not amagnitude greater than a predetermined threshold value is detected fromthe vibration in said second frequency band, when it is determined thatthe magnitude greater than said predetermined threshold value isdetected from the vibration in said second frequency band, saidoperation unit determines whether or not knocking has occurred based ona result of comparison between the waveform detected from the magnitudeof the vibration in said second frequency band and a waveform model thatis a reference of the vibration occurring in said internal combustionengine and on the magnitude of the vibration in said first frequencyband, and when it is determined that the magnitude greater than saidpredetermined threshold value is not detected from the vibration in saidsecond frequency band, said operation unit determines that knocking hasnot occurred.
 2. The device for determining knocking of the internalcombustion engine according to claim 1, wherein said operation unitdetermines whether or not a magnitude greater than said predeterminedthreshold value is detected from the vibration in said second frequencyband in a first interval of crank angle out of the first interval ofcrank angle and a second interval of crank angle in which a magnitude ofthe vibration due to knocking is smaller than in said first interval,when it is determined that the magnitude greater than said predeterminedthreshold value is detected from the vibration in said second frequencyband in said first interval, said operation unit determines whether ornot knocking has occurred based on a result of comparison between thewaveform detected from the magnitude of the vibration in said secondfrequency band and said waveform model and on the magnitude of thevibration in the first frequency band, and when it is determined thatthe magnitude greater than said predetermined threshold value is notdetected from the vibration in said second frequency band in said firstinterval, said operation unit determines that knocking has not occurred.3. The device for determining knocking of the internal combustion engineaccording to claim 1, wherein when it is determined that the magnitudegreater than said predetermined threshold value is not detected from thevibration in said second frequency band, said operation unit determinesthat knocking has not occurred, while not determining whether knockinghas occurred or not based on a result of comparison between the waveformdetected from the magnitude of the vibration in said second frequencyband and said waveform model and on the magnitude of the vibration insaid first frequency band.
 4. The device for determining knocking of theinternal combustion engine according to claim 1, wherein said thresholdvalue is a value calculated based on predetermined number of magnitudesselected by placing higher priority on smaller magnitudes out of thedetected magnitudes.
 5. The device for determining knocking of theinternal combustion engine according to claim 4, wherein said thresholdvalue is a value calculated as a product of an average value ofpredetermined number of magnitudes selected by placing higher priorityon smaller magnitudes out of the detected magnitudes and a predeterminedcoefficient.
 6. A device for determining knocking of an internalcombustion engine, comprising: first magnitude detecting means fordetecting a magnitude of vibration in a first frequency band thatincludes a frequency of vibration due to knocking, out of vibrationoccurring in said internal combustion engine, second magnitude detectingmeans for detecting a magnitude of vibration in a second frequency bandthat includes said first frequency band and that is broader than saidfirst frequency band, out of the vibration occurring in said internalcombustion engine; waveform detecting means for detecting a waveform ofthe vibration in the second frequency band, based on the magnitude ofthe vibration in said second frequency band; first determining means fordetermining whether or not a magnitude greater than a predeterminedthreshold value is detected by said second magnitude detecting means;second determining means for determining, when it is determined that themagnitude greater than said predetermined threshold value is detected bysaid second magnitude detecting means, whether or not knocking hasoccurred based on a result of comparison between the waveform detectedfrom the magnitude of the vibration in said second frequency band and awaveform model that is a reference of the vibration occurring in saidinternal combustion engine and on the magnitude detected by said firstmagnitude detecting means; and third determining means for determiningthat knocking has not occurred, when it is determined that the magnitudegreater than said predetermined threshold value is not detected by saidsecond magnitude detecting means.
 7. The device for determining knockingof the internal combustion engine according to claim 6, wherein saidfirst determining means includes means for determining whether or not amagnitude greater than said predetermined threshold value is detected bysaid second magnitude detecting means in a first interval of crank angleout of the first interval of crank angle and a second interval of crankangle in which a magnitude of the vibration due to knocking is smallerthan in said first interval, said second determining means includesmeans for determining, when it is determined that the magnitude greaterthan said predetermined threshold value is detected by said secondmagnitude detecting means in said first interval, whether or notknocking has occurred based on a result of comparison between thewaveform detected from the magnitude of the vibration in said secondfrequency band and said waveform model and on the magnitude detected bysaid first magnitude detecting means, and said third determining meansincludes means for determining that knocking has not occurred, when itis determined that the magnitude greater than said predeterminedthreshold value is not detected by said second magnitude detecting meansin said first interval.
 8. The device for determining knocking of theinternal combustion engine according to claim 6, wherein said thirddetermining means includes means for determining that knocking has notoccurred, while not determining whether knocking has occurred or notbased on a result of comparison between the waveform detected from themagnitude of the vibration in said second frequency band and saidwaveform model and on the magnitude detected by said first magnitudedetecting means.
 9. The device for determining knocking of the internalcombustion engine according to claim 6, wherein said threshold value isa value calculated based on predetermined number of magnitudes selectedby placing higher priority on smaller magnitudes out of the detectedmagnitudes.
 10. The device for determining knocking of the internalcombustion engine according to claim 9, wherein said threshold value isa value calculated as a product of an average value of predeterminednumber of magnitudes selected by placing higher priority on smallermagnitudes out of the detected magnitudes and a predeterminedcoefficient.
 11. A method of determining knocking of the internalcombustion engine, comprising the steps of: detecting a magnitude ofvibration in a first frequency band that includes a frequency ofvibration due to knocking, out of vibration occurring in said internalcombustion engine; detecting a magnitude of vibration in a secondfrequency band that includes said first frequency band and that isbroader than said first frequency band, out of the vibration occurringin said internal combustion engine; detecting a waveform of thevibration in the second frequency band, based on the magnitude of thevibration in said second frequency band; determining whether or not amagnitude greater than a predetermined threshold value is detected fromthe vibration in said second frequency band; when it is determined thatthe magnitude greater than said predetermined threshold value isdetected from the vibration in said second frequency band, determiningwhether or not knocking has occurred based on a result of comparisonbetween the waveform detected from the magnitude of the vibration insaid second frequency band and a waveform model that is a reference ofthe vibration occurring in said internal combustion engine and on themagnitude of the vibration in said first frequency band; and when it isdetermined that the magnitude greater than said predetermined thresholdvalue is not detected from the vibration in said second frequency band,determining that knocking has not occurred.
 12. The method ofdetermining knocking of the internal combustion engine according toclaim 11 wherein said step of determining whether or not the magnitudegreater than the predetermined threshold value is detected from thevibration in said second frequency band includes a step of determiningwhether or not a magnitude greater than said predetermined thresholdvalue is detected from the vibration in said second frequency band in afirst interval of crank angle out of the first interval of crank angleand a second interval of crank angle in which a magnitude of thevibration due to knocking is smaller than in said first interval, saidstep of determining whether or not knocking has occurred includes a stepof determining, when it is determined that the magnitude greater thansaid predetermined threshold value is detected from the vibration insaid second frequency band in said first interval, whether or notknocking has occurred based on a result of comparison between thewaveform detected from the magnitude of the vibration in said secondfrequency band and said waveform model and on the magnitude of thevibration in the first frequency band, and said step of determining thatknocking has not occurred includes a step of determining, when it isdetermined that the magnitude greater than said predetermined thresholdvalue is not detected from the vibration in said second frequency bandin said first interval, determining that knocking has not occurred. 13.The method of determining knocking of the internal combustion engineaccording to claim 11, wherein said step of determining that knockinghas not occurred includes a step of determining that knocking has notoccurred, while not determining whether knocking has occurred or notbased on a result of comparison between the waveform detected from themagnitude of the vibration in said second frequency band and saidwaveform model and on the magnitude of the vibration in said firstfrequency band.
 14. The method of determining knocking of the internalcombustion engine according to claim 11 wherein said threshold value isa value calculated based on predetermined number of magnitudes selectedby placing higher priority on smaller magnitudes out of the detectedmagnitudes.
 15. The method of determining knocking of the internalcombustion engine according to claim 14, wherein said threshold value isa value calculated as a product of an average value of predeterminednumber of magnitudes selected by placing higher priority on smallermagnitudes out of the detected magnitudes and a predeterminedcoefficient.